package com.cmes.system.core.workflow;

import org.flowable.idm.api.*;
import org.flowable.idm.engine.impl.UserQueryImpl;
import org.flowable.idm.engine.impl.persistence.entity.UserEntity;
import org.flowable.idm.engine.impl.persistence.entity.UserEntityManager;

import java.util.Collections;
import java.util.List;
import java.util.Map;

/**
 * 工作流用户管理
 *
 * @author Bruce.Gong
 * @since 1.0.0-SNAPSHOT
 */
public class WorkflowUserManager implements UserEntityManager {

    @Override
    public UserEntity findById(String s) {
        return null;
    }

    @Override
    public List<User> findUserByQueryCriteria(UserQueryImpl query) {
        return Collections.emptyList();
    }

    @Override
    public long findUserCountByQueryCriteria(UserQueryImpl query) {
        return 0;
    }

    @Override
    public UserQuery createNewUserQuery() {
        return null;
    }

    @Override
    public List<User> findUsersByNativeQuery(Map<String, Object> parameterMap) {
        return Collections.emptyList();
    }

    @Override
    public long findUserCountByNativeQuery(Map<String, Object> parameterMap) {
        return 0;
    }

    // region 废弃

    @Override
    public User createNewUser(String userId) {
        return null;
    }

    @Override
    public void updateUser(User updatedUser) {}

    @Override
    public Boolean checkPassword(String userId, String password, PasswordEncoder passwordEncoder, PasswordSalt passwordSalt) {
        return null;
    }

    @Override
    public boolean isNewUser(User user) {
        return false;
    }

    @Override
    public Picture getUserPicture(User user) {
        return null;
    }

    @Override
    public void setUserPicture(User user, Picture picture) {}

    @Override
    public void deletePicture(User user) {}

    @Override
    public List<User> findUsersByPrivilegeId(String privilegeId) {
        return Collections.emptyList();
    }

    @Override
    public UserEntity create() {
        return null;
    }

    @Override
    public void insert(UserEntity entity) {}

    @Override
    public void insert(UserEntity entity, boolean b) {}

    @Override
    public UserEntity update(UserEntity entity) {
        return null;
    }

    @Override
    public UserEntity update(UserEntity entity, boolean b) {
        return null;
    }

    @Override
    public void delete(String s) {}

    @Override
    public void delete(UserEntity entity) {}

    @Override
    public void delete(UserEntity entity, boolean b) {}

    // endregion

}
